#include <bits/stdc++.h>
#define fastio \
ios_base::sync_with_stdio(0); \
cin.tie(0);
#define vi vector<int>
#define vl vector<long long>
#define vc vector<char>
#define vs vector<string>
#define pi pair<int, int>
#define pl pair<ll, ll>
#define vp vector<pi>
#define vpl vector<pl>
#define ll long long
#define MAX 2147000000
#define MOD 1000000007
using namespace std;
int main(){
fastio;
int n, q;
cin >> n >> q;
set<int> A, B;
int cnt{0};
while(q--){
int a, b;
cin >> a >> b;
if(a == 1){
if(A.count(b)){
for(int i{-1}; i <= 1; ++i){
if(B.count(b + i)) cnt--;
}
A.erase(b);
}
else{
for(int i{-1}; i <= 1; ++i){
if(B.count(b + i)) cnt++;
}
A.insert(b);
}
}
else{
if(B.count(b)){
for(int i{-1}; i <= 1; ++i){
if(A.count(b + i)) cnt--;
}
B.erase(b);
}
else{
for(int i{-1}; i <= 1; ++i){
if(A.count(b + i)) cnt++;
}
B.insert(b);
}
}
if(!B.count(n) && cnt == 0) cout << "Yes\n";
else cout << "No\n";
}
}
497. Random Point in Non-overlapping Rectangles | 528. Random Pick with Weight |
470. Implement Rand10() Using Rand7() | 866. Prime Palindrome |
1516A - Tit for Tat | 622. Design Circular Queue |
814. Binary Tree Pruning | 791. Custom Sort String |
787. Cheapest Flights Within K Stops | 779. K-th Symbol in Grammar |
701. Insert into a Binary Search Tree | 429. N-ary Tree Level Order Traversal |
739. Daily Temperatures | 647. Palindromic Substrings |
583. Delete Operation for Two Strings | 518. Coin Change 2 |
516. Longest Palindromic Subsequence | 468. Validate IP Address |
450. Delete Node in a BST | 445. Add Two Numbers II |
442. Find All Duplicates in an Array | 437. Path Sum III |
436. Find Right Interval | 435. Non-overlapping Intervals |
406. Queue Reconstruction by Height | 380. Insert Delete GetRandom O(1) |
332. Reconstruct Itinerary | 368. Largest Divisible Subset |
377. Combination Sum IV | 322. Coin Change |